<?php

/**
 * Error Object when a type is not compatible with a type
 *
 */
class AIS_ObjectTypeCompatibilityValidatorError
{
	/**
	 * An error code describing the type of error
	 * 
	 * The possible error codes are:
	 * 
	 * 1: A Property had an illegal type (e.g. int instead of string, or string with invalid pattern)
	 * 2: An Object was missing a non optional property
	 * 3: Array had an illegal size
	 */
	public $errorCode;
	/**
	 * The message that came with this error
	 *
	 * @var string
	 */
	public $errorMessage;
	/**
	 * The type the $receivedValue did not have
	 *
	 * @var string
	 */
	public $expectedType;
	/**
	 * A trace describing the position of the ckecked value in the object structure
	 *
	 * @var string
	 */
	public $trace = "";
	/**
	 * The value that is wrong
	 *
	 * @var mixed
	 */
	public $receivedValue;
	/**
	 * The member name that was not found in the object
	 *
	 * @var string
	 */
	public $expectedMemberName;
}

?>